package com.zht.demo;


import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang3.StringUtils;

import java.text.SimpleDateFormat;
import java.util.Comparator;
import java.util.Date;

public class ssss {
    public static void main(String[] args) {
        String json = "{\"success\":true,\"message\":\"ok\",\"code\":200,\"result\":{\"DQYM\":1,\"DYTS\":10,\"FHZ\":[{\"HH\":\"034006223\",\"CSRQ\":253209600000,\"MZDM\":\"01\",\"CYJMSFZQK_YXQJZRQ\":\"20020901\",\"XM\":\"邵长波\",\"RKZT\":\"1\",\"GMSFHM\":\"370303197801102834\",\"HJDZ_SSXQDM\":\"370403\",\"YHZGXDM\":\"99\",\"GXSJ\":1629446123000,\"XBDM\":\"1\",\"HJDZ_QHNXXDZ\":\"张范街道办事处府前路1号\"},{\"HH\":\"326019348\",\"CYJMSFZQK_YXQJZRQ\":\"20261014\",\"GXSJ\":1596346091000,\"CSRQ\":253209600000,\"CYJMSFZQK_YXQQSRQ\":1160755200000,\"MZDM\":\"01\",\"XM\":\"邵长波\",\"RKZT\":\"0\",\"GMSFHM\":\"370303197801102834\",\"HJDZ_SSXQDM\":\"370303\",\"YHZGXDM\":\"11\",\"XBDM\":\"1\",\"HJDZ_QHNXXDZ\":\"北西六路67号黄金国际西区14号楼2单元402号\"}],\"CXSJL\":2}}";


        JSONObject jsonObject = JSONObject.parseObject(json);
        System.out.println(jsonObject.toJSONString());
        if (!jsonObject.get("message").equals("ok")){
            System.out.println("获取常口信息返回异常");
        }

        JSONObject result = (JSONObject) jsonObject.get("result");
        JSONArray ckfhz = result.getJSONArray("FHZ");
        for (int i = 0; i < ckfhz.size(); i++) {
            String cyjmsfzqk_yxqqsrq = ckfhz.getJSONObject(i).getString("CYJMSFZQK_YXQQSRQ");
            String csrq = ckfhz.getJSONObject(i).getString("CSRQ");
            // 时间戳转换格式 yyyy-MM-dd
            if (!StringUtils.isBlank(cyjmsfzqk_yxqqsrq)){
                Date date = new Date(Long.valueOf(cyjmsfzqk_yxqqsrq));
                String formatDate = new SimpleDateFormat("yyyy-MM-dd").format(date);
                ckfhz.getJSONObject(i).put("CYJMSFZQK_YXQQSRQ",formatDate);
            }
            if (!StringUtils.isBlank(csrq)){
                Date datecsrq = new Date(Long.valueOf(csrq));
                String formatDatescrq = new SimpleDateFormat("yyyy-MM-dd").format(datecsrq);
                ckfhz.getJSONObject(i).put("CSRQ",formatDatescrq);
            }

        }
        // 根据时间倒序 GXSJ 更新时间
//        ckfhz.sort(Comparator.comparing(obj -> ((JSONObject) obj).getDate("GXSJ")).reversed());
//        if(ckfhz.size() > 1 && !"null".equals(ckfhz.getJSONObject(0).getString("GXSJ"))){
//            JSONArray tmpData = new JSONArray();
//            String date = ckfhz.getJSONObject(0).getString("GXSJ");
//            for(int i = 0; i < ckfhz.size(); i++){
//                if(date.equals(ckfhz.getJSONObject(i).getString("GXSJ"))){
//                    tmpData.add(ckfhz.getJSONObject(i));
//                }
//            }
//            // 根据人口状态顺序 RKZT 人口状态
//            tmpData.sort(Comparator.comparing(obj -> ((JSONObject) obj).getInteger("RKZT")));
//            ckfhz = tmpData;
//        }
        ckfhz.sort(Comparator.comparing(obj -> ((JSONObject) obj).getInteger("RKZT")));
        System.out.println("ckfhz:>" + ckfhz.toJSONString());
        if (ckfhz.size() != 0){
            System.out.println("ckfhz:>" + ckfhz.toJSONString());
        }

        System.out.println("数据为空");
    }
}